package com.hsnn.medstgmini.pro.project.service.impl;

import java.util.List;

import javax.transaction.Transactional;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.hsnn.medstgmini.base.std.model.StdCompdrugprofile;
import com.hsnn.medstgmini.dao.HibernateSqlUtil;
import com.hsnn.medstgmini.pro.project.dao.ProdDrugProfileDao;
import com.hsnn.medstgmini.pro.project.model.form.ProdDrugProfileForm;
import com.hsnn.medstgmini.pro.project.service.ProdDrugProfileManager;
import com.hsnn.medstgmini.sys.model.SysUser;
import com.hsnn.medstgmini.util.Pagination;

/**
 * @category 生产企业药品资质申报管理
 * @author 蔡春龙
 * @date 2015年8月28日
 */
@Service
public class ProdDrugProfileManagerImpl implements ProdDrugProfileManager {

	@Autowired
	private ProdDrugProfileDao prodDrugProfileDao;

	@Autowired
	private HibernateSqlUtil hibernateSqlUtil;

	/**
	 * @category 查询企业药品资质列表
	 * @date 2015年8月30日
	 * @param page
	 * @return
	 */
	public Pagination getProdDrugProfileList(Pagination page) {
		return prodDrugProfileDao.getProdDrugProfileList(page);
	}

	/**
	 * @category 申报产品资质
	 * @date 2015年8月31日
	 * @param list
	 * @param user
	 */
	public void submitProdDrugProfileList(List<ProdDrugProfileForm> list,
			SysUser user) {
		prodDrugProfileDao.submitProdDrugProfileList(list, user);
	}

	/**
	 * @category 企业药品资质审核结果列表
	 * @date 2015年8月31日
	 * @param page
	 * @return
	 */
	public Pagination getDrugProfileAuditResultList(Pagination page) {
		return prodDrugProfileDao.getDrugProfileAuditResultList(page);
	}

	/**
	 * @category 查询生产企业资质澄清列表
	 * @date 2015年8月31日
	 * @param page
	 * @return
	 */
	public Pagination getDrugProfileComplainList(Pagination page) {
		return prodDrugProfileDao.getDrugProfileComplainList(page);
	}

	/**
	 * @category 澄清药品资质
	 * @date 2015年9月1日
	 * @param stdCompdrugprofile
	 * @param form
	 */
	@Transactional
	public void complainDrugProfile(StdCompdrugprofile stdCompdrugprofile,
			ProdDrugProfileForm form, SysUser user) {
		hibernateSqlUtil.update(stdCompdrugprofile);
		prodDrugProfileDao.complainDrugProfile(form, user);
	}

	/**
	 * @category 药品资质申报页面
	 * @date 2015年8月30日
	 * @param page
	 * @return
	 */
	public Pagination getProdDrugListDeclare(Pagination page) {
		return prodDrugProfileDao.getProdDrugListDeclare(page);
	}
	
	/**
	 * @category 药品资审查看页面
	 * @date 2015年8月30日
	 * @param page
	 * @return
	 */
	public Pagination getProdDrugListDeclareSee(Pagination page) {
		return prodDrugProfileDao.getProdDrugListDeclareSee(page);
	}
	
	/**
	 * @category 药品资审澄清页面查询
	 * @date 2015年8月30日
	 * @param page
	 * @return
	 */
	public Pagination getProdDrugListClarify(Pagination page) {
		return prodDrugProfileDao.getProdDrugListClarify(page);
	}
	
	/**
	 * @category 药品资审澄清查看页面查询
	 * @date 2015年8月30日
	 * @param page
	 * @return
	 */
	public Pagination getProdDrugListClarifySee(Pagination page) {
		return prodDrugProfileDao.getProdDrugListClarifySee(page);
	}

	/**
	 * @category 查询药品资质澄清结果列表
	 * @date 2015年8月31日
	 * @param page
	 * @return
	 */
	public Pagination getDrugProfileComplainResultList(Pagination page) {
		return prodDrugProfileDao.getDrugProfileComplainResultList(page);
	}

}
